import Request from 'luch-request' // 使用npm
//请求方式 restful风格语法  get 列表的渲染   post 表单的提交   put 编辑修改  delete 删除
var http = new Request({
	baseURL: 'https://lwcxtt.asia/api',
	timeout: 60000,
})
http.interceptors.request.use((config) => { // 可使用async await 做异步操作
  let token = uni.getStorageSync('token')||''
  if(token){
	  config.header.token = token
  }
  config.header = {
    ...config.header,
  }
  // 演示custom 用处
  // if (config.custom.auth) {
  //   config.header.token = 'token'
  // }
  // if (config.custom.loading) {
  //  uni.showLoading()
  // }
  /**
   /* 演示
   if (!token) { // 如果token不存在，return Promise.reject(config) 会取消本次请求
      return Promise.reject(config)
    }
   **/
  return config
}, config => { // 可使用async await 做异步操作
  return Promise.reject(config)
})

http.interceptors.response.use((res) => { /* 对响应成功做点什么 可使用async await 做异步操作*/
  //  if (response.data.code !== 200) { // 服务端返回的状态码不等于200，则reject()
  //    return Promise.reject(response) // return Promise.reject 可使promise状态进入catch
 // if (response.config.custom.verification) { // 演示自定义参数的作用
  //   return response.data
  // }
  console.log('响应拦截',res)
  return res.data
}, (res) => { /*  对响应错误做点什么 （statusCode !== 200）*/
  console.log(res)
  return Promise.reject(res)
})

function reqeuest(options){
	if(options.method.toLowerCase()=='get'){
		options.params = options.data
	}
	let obj = {
		url:http.config.baseURL+options.url,
		method:options.method||'GET',
		data:options.data||{},
		dataType:options.dataType||'json'	
	}
	return http.request(obj)
}
export default reqeuest